home *** CD-ROM | disk | FTP | other *** search
/ Best of www.BestZips.com (Collector's Edition) / Best of WWW.BESTZIPS.COM Collector's Edition (JCSM Shareware) (JCS Marketing).ISO / prgtools / euphor14.zip / BIND.EX < prev    next >
Text File  |  1996-07-01  |  14KB  |  1,071 lines

  1.     ---------------------------------------
  2.     --  Source Code Shrouder and Binder  --
  3.     ---------------------------------------
  4.  
  5. -- N.B. Things in square brackets [...] are optional.
  6.  
  7. -- usage 1:  bind.bat [-hide_strings] [filename[.ex]]
  8.  
  9. -- usage 2:  shroud.bat [-hide_strings] [-full_keywords] [filename[.ex]]
  10.  
  11. -- Or simply type: bind or shroud, and you will be prompted for all input.
  12.  
  13. -- Both .bat files run this one bind.ex file, but with different options.
  14.  
  15. -- Debugging tip: Before releasing a bound program to your users, make
  16. -- a shrouded version of the same source code using:  shroud -full_keywords
  17. -- and also say  -hide_strings, if that's what you did when you ran bind on 
  18. -- your program. This way you will have a semi-readable file that matches line 
  19. -- for line, and uses the same shrouded symbols, as your bound program.
  20. -- This will help you to understand any ex.err dumps that are sent to you from 
  21. -- your users. It will be easier for you see where an error has occurred,
  22. -- and to convert shrouded symbols back to their original names.
  23.  
  24.  
  25. ùwarning
  26.     
  27. ùtype_check
  28. îB=1,C=0
  29. îD=0,E=1,F=2
  30. îG=1,
  31. H=2,
  32. I=3
  33. îJ=-1
  34. îK=1,L=2
  35. îM=128,
  36. N=170
  37. îO={
  38. {
  39. 105,102},{
  40. 101,110,100},{
  41. 116,104,101,110},{
  42. 112,114,111,99,101,100,117,114,101},{
  43. 101,108,115,101},{
  44. 102,111,114},{
  45. 114,101,116,117,114,110},
  46. {
  47. 100,111},{
  48. 101,108,115,105,102},{
  49. 119,104,105,108,101},{
  50. 116,121,112,101},{
  51. 99,111,110,115,116,97,110,116},{
  52. 116,111},{
  53. 97,110,100},{
  54. 111,114},
  55. {
  56. 101,120,105,116},{
  57. 102,117,110,99,116,105,111,110},{
  58. 103,108,111,98,97,108},{
  59. 98,121},{
  60. 110,111,116},{
  61. 105,110,99,108,117,100,101},
  62. {
  63. 119,105,116,104},{
  64. 119,105,116,104,111,117,116}}
  65. îP={
  66. {
  67. 108,101,110,103,116,104},{
  68. 112,117,116,115},{
  69. 105,110,116,101,103,101,114},{
  70. 115,101,113,117,101,110,99,101},{
  71. 112,111,115,105,116,105,111,110},{
  72. 111,98,106,101,99,116},
  73. {
  74. 97,112,112,101,110,100},{
  75. 112,114,101,112,101,110,100},{
  76. 112,114,105,110,116},{
  77. 112,114,105,110,116,102},
  78. {
  79. 99,108,101,97,114,95,115,99,114,101,101,110},{
  80. 102,108,111,111,114},{
  81. 103,101,116,99},{
  82. 103,101,116,115},{
  83. 103,101,116,95,107,101,121},
  84. {
  85. 114,97,110,100},{
  86. 114,101,112,101,97,116},{
  87. 97,116,111,109},{
  88. 99,111,109,112,97,114,101},{
  89. 102,105,110,100},{
  90. 109,97,116,99,104},
  91. {
  92. 116,105,109,101},{
  93. 99,111,109,109,97,110,100,95,108,105,110,101},{
  94. 111,112,101,110},{
  95. 99,108,111,115,101},{
  96. 116,114,97,99,101},{
  97. 103,101,116,101,110,118},
  98. {
  99. 115,113,114,116},{
  100. 115,105,110},{
  101. 99,111,115},{
  102. 116,97,110},{
  103. 108,111,103},{
  104. 115,121,115,116,101,109},{
  105. 100,97,116,101},{
  106. 114,101,109,97,105,110,100,101,114},
  107. {
  108. 112,111,119,101,114},{
  109. 109,97,99,104,105,110,101,95,102,117,110,99},{
  110. 109,97,99,104,105,110,101,95,112,114,111,99},{
  111. 97,98,111,114,116},{
  112. 112,101,101,107},{
  113. 112,111,107,101},
  114. {
  115. 99,97,108,108},{
  116. 115,112,114,105,110,116,102}}
  117. îQ=16,
  118. R=17,
  119. S=32,
  120. T=33,
  121. U=34,
  122. V=35,
  123. W=36,
  124. X=37
  125. îY=╬(2,32)-1
  126. îZ=╬(2,20)-1
  127. ïa(╝b)
  128. çb>0Äb<=YÄ╢(b)=b
  129. éï
  130. ïb(╝c)
  131. çc>0Äc<=ZÄ╢(c)=c
  132. éï
  133. îc=10
  134. îd=1,
  135. e=2,
  136. f=3,
  137. g=4,
  138. h=5,
  139. i=6,
  140. j=7,
  141. k=8,
  142. l=9,
  143. m=10
  144. ïn(«o)
  145. ç½(o)=c
  146. éï
  147. æo(¡p)
  148. ç╧(Q,p)
  149. éæ
  150. äp(a q)
  151. ╨(R,q)
  152. éä
  153. æq(¡r)
  154. ç╧(S,r)
  155. éæ
  156. är(b s)
  157. ╨(T,s)
  158. éä
  159. æs(¡t,n u)
  160. ç╧(U,{t,u})
  161. éæ
  162. æt(╝u)
  163. ¡v,w,x,y
  164. v=═(u,#100)
  165. u=╢(u/#100)
  166. w=═(u,#100)
  167. u=╢(u/#100)
  168. x=═(u,#100)
  169. u=╢(u/#100)
  170. y=═(u,#100)
  171. ç{v,w,x,y}
  172. éæ
  173. æu(«v)
  174. çv[1]+
  175. v[2]*#100+
  176. v[3]*#10000+
  177. v[4]*#1000000
  178. éæ
  179. æw(╝x,¡y)
  180. «v
  181. üx<0â
  182. x=x+╬(2,y)
  183. éü
  184. v=╗(0,y)
  185. åz=1ìyê
  186. v[z]=═(x,2)
  187. x=╢(x/2)
  188. éå
  189. çv
  190. éæ
  191. æx(«y)
  192. ╝v,z
  193. v=0
  194. z=1
  195. åBA=1ì½(y)ê
  196. üy[BA]â
  197. v=v+z
  198. éü
  199. z=z+z
  200. éå
  201. çv
  202. éæ
  203. äy(¡v)
  204. ╨(V,v)
  205. éä
  206. äz(¡BA)
  207. ╨(W,BA)
  208. éä
  209. äv(«BA)
  210. ╨(X,BA)
  211. éä
  212. îBA=25
  213. Ææget_position()
  214. ç╧(BA,0)
  215. éæ
  216. îBB=1,
  217. BC=2,
  218. BD=3,
  219. BE=4,
  220. BF=5,
  221. BG=6,
  222. BH=7,
  223. BI=8
  224. îBJ={
  225. 43,45,42,47,91,93,40,41,123,125,44,46,61,38,39,34,60,62}
  226. îBK=-999
  227. îBL=1,BM=2,BN=3
  228. ïBO(¡BP)
  229. ç╛(BP,{BN,BM,BL})
  230. éï
  231. ïBP(¡BQ)
  232. çBQ>=-1 
  233. éï
  234. ïBQ(¡BR)
  235. çBR>=JÄBR<=255ÅBR=BK
  236. éï
  237. ïBR(¡BS)
  238. çBS>=0
  239. éï
  240. ïBS(¡BT)
  241. çBT=BÅBT=C
  242. éï
  243. BS BT 
  244. «BU
  245. ¡BV
  246. äBW()
  247. BU=╗(BC,255)
  248. BU[97..122]=BD
  249. BU[65..90]=BD
  250. BU[95]=BD
  251. BU[48..57]=BB
  252. BU[35]=BI
  253. BU[91]=BE
  254. BU[93]=BE
  255. BU[40]=BE
  256. BU[41]=BE
  257. BU[123]=BE
  258. BU[125]=BE
  259. BU[39]=BF
  260. BU[34]=BF
  261. BU[32]=BH
  262. BU[9]=BH
  263. BU[10]=BH
  264. BU[45]=BG
  265. éä
  266. BQ BX
  267. BX=BK
  268. æBY(BP BZ)
  269. BQ Ba
  270. üBX=BKâ
  271. ç╖(BZ)
  272. à
  273. Ba=BX
  274. BX=BK
  275. çBa
  276. éü
  277. éæ
  278. äBZ(BQ Ba)
  279. BX=Ba
  280. éä
  281. BP Ba,Bb
  282. BS Bc 
  283. BQ Bd
  284. Bd=BK
  285. äBe(BQ Bf)
  286. ü╛(Bf,{
  287. 32,9,10})â
  288. üBd=10â
  289. ç
  290. éü
  291. üBf !=10â
  292. üBd>MÅ╛(Bd,BJ)â
  293. ç
  294. ë╛(Bd,{
  295. 32,9})â
  296. ç
  297. éü
  298. éü
  299. ëBf>MÅ╛(Bf,BJ)â
  300. ü╛(Bd,{
  301. 32,9})â
  302. Bd=BK
  303. éü
  304. éü
  305. üBd !=BKâ
  306. ¼(Ba,Bd)
  307. éü
  308. Bd=Bf 
  309. éä
  310. äBf(«Bg)
  311. üBd !=BKâ
  312. ¼(Ba,Bd)
  313. Bd=BK
  314. éü
  315. ¼(Ba,Bg)
  316. éä
  317. «Bg 
  318. Bg={}
  319. äBh(«Bi)
  320. Bg=Bg&Bi
  321. éä
  322. BR Bi
  323. Bi=1
  324. BO Bj
  325. Bj=BM
  326. BS Bk
  327. Bk=C
  328. ¡Bl,Bm
  329. Bl=1
  330. Bm=1
  331. «Bn,Bo,Bp
  332. Bn={{},{}}
  333. Bo={{{},{}}}
  334. Bp={{},{}}
  335. «Bq
  336. Bq={}
  337. æBr()
  338. BR Bs,Bt
  339. «Bu
  340. ü½(Bg)>0â
  341. Bu=Bg[1]
  342. Bg=Bg[2..½(Bg)]
  343. çBu
  344. éü
  345. Bu={}
  346. Bt=Bi
  347. èBê
  348. Bs=═(Bt,52)
  349. Bt=╢(Bt/52)
  350. üBs<26â
  351. Bu=65+Bs&Bu
  352. à
  353. Bu=97+Bs-26&Bu 
  354. éü
  355. üBt=0â
  356. É
  357. éü
  358. éè
  359. Bi=Bi+1
  360. ü╛(Bu,O)â
  361. çBr()
  362. ë╛(Bu,P)â
  363. çBr()
  364. ë╛(Bu,Bn[L])â
  365. çBr()
  366. à
  367. çBu
  368. éü
  369. éæ
  370. æBs(«Bt)
  371. «Bu
  372. BR Bv
  373. BS Bw
  374. Bv=0
  375. Bv=╛(Bt,Bp[K])
  376. üBvâ
  377. çBp[L][Bv]
  378. éü
  379. Bv=╛(Bt,Bn[K])
  380. üBvâ
  381. çBn[L][Bv]
  382. éü
  383. Bv=╛(Bt,Bo[Bl][K])
  384. üBvâ
  385. çBo[Bl][L][Bv]
  386. éü
  387. üBj=BLâ
  388. Bu=Br()
  389. Bp[K]=▒(Bp[K],Bt)
  390. Bp[L]=▒(Bp[L],Bu)
  391. à
  392. üöBkâ
  393. Bj=BM
  394. éü
  395. üBj=BNâ
  396. ü½(Bq)=0â
  397. Bu=Bt 
  398. Bw=C
  399. ü╛(Bu,Bn[L])â
  400. Bw=B
  401. éü
  402. åBx=1ì½(Bo)ê
  403. ü╛(Bu,Bo[Bx][L])â
  404. Bw=B
  405. éü
  406. éå
  407. üBwâ
  408. ┤(F,
  409. {
  410. 80,108,101,97,115,101,32,114,101,110,97,109,101,32,103,108,111,98,97,108,
  411. 32,115,121,109,98,111,108,32,37,115,32,116,111,32,115,111,109,101,116,104,
  412. 105,110,103,32,108,111,110,103,101,114,46,10},
  413. {Bu})
  414. ¼(F,
  415. {
  416. 73,116,32,105,115,32,117,110,102,111,114,116,117,110,97,116,101,108,121,32,
  417. 97,108,114,101,97,100,121,32,105,110,32,117,115,101,32,97,115,32,97,32,
  418. 115,104,111,114,116,32,115,104,114,111,117,100,101,100,32,110,97,109,101,46,
  419. 10})
  420. ╤(1)
  421. éü
  422. à
  423. Bu=Br()
  424. éü
  425. Bn[K]=▒(Bn[K],Bt)
  426. Bn[L]=▒(Bn[L],Bu)
  427. à
  428. Bu=Br()
  429. Bo[Bl][K]=▒(
  430. Bo[Bl][K],Bt)
  431. Bo[Bl][L]=▒(
  432. Bo[Bl][L],Bu)
  433. éü
  434. éü
  435. çBu
  436. éæ
  437. «Bt 
  438. îBu=97-65 
  439. æBv(░Bw)
  440. ¡Bx
  441. åBy=1ì½(Bw)ê
  442. Bx=Bw[By]
  443. üBx>=97â
  444. üBx<=122â
  445. Bw[By]=Bx-Bu
  446. éü
  447. éü
  448. éå
  449. çBw
  450. éæ
  451. æBw(«Bx)
  452. ¡By
  453. By=1
  454. åBz=1ì½(Bx)ê
  455. üBx[Bz]=92â
  456. By=Bz+1
  457. éü
  458. éå
  459. çBv(Bx[By..½(Bx)])
  460. éæ
  461. «Bx 
  462. Bx={}
  463. æBy(«Bz)
  464. Bz=Bw(Bz)
  465. ü╛(Bz,Bx)â
  466. çB
  467. à
  468. Bx=▒(Bx,Bz)
  469. çC
  470. éü
  471. éæ
  472. æBz()
  473. BQ CA
  474. «CB
  475. BP CC
  476. CA=BY(Bb)
  477. èCA=32ÅCA=9ê
  478. CA=BY(Bb)
  479. éè
  480. CB={}
  481. èBU[CA]!=BHÄCA !=Jê
  482. CB=CB&CA
  483. CA=BY(Bb)
  484. éè
  485. üBy(CB)â
  486. çBb
  487. éü
  488. Bq=▒(Bq,{Bb,Bl})
  489. Bm=Bm+1
  490. Bl=Bm
  491. Bo=▒(Bo,{{},{}})
  492. ü½(CB)>0â
  493. üCB[1]=92Å╛(58,CB)â
  494. CC=┬(CB,{
  495. 114})
  496. üCC=-1â
  497. ¼(F,{
  498. 67,111,117,108,100,110,39,116,32,111,112,101,110,32,105,110,99,108,117,100,
  499. 101,32,102,105,108,101,58,32}&CB&10)
  500. éü
  501. çCC
  502. éü
  503. éü
  504. CC=┬(Bt&CB,{
  505. 114})
  506. üCC=-1â
  507. CC=┬(┼({
  508. 69,85,68,73,82})&{
  509. 92,73,78,67,76,85,68,69,92}&CB,{
  510. 114})
  511. üCC=-1â
  512. ¼(F,{
  513. 67,111,117,108,100,110,39,116,32,111,112,101,110,32,105,110,99,108,117,100,
  514. 101,32,102,105,108,101,58,32}&CB&10)
  515. éü
  516. éü
  517. çCC
  518. éæ
  519. æCA()
  520. BP CB
  521. ├(Bb)
  522. ü½(Bq)=0â
  523. ç-1
  524. éü
  525. CB=Bq[½(Bq)][1]
  526. Bl=Bq[½(Bq)][2]
  527. Bq=Bq[1..½(Bq)-1]
  528. çCB
  529. éæ
  530. æCC(╝CB)
  531. «CD
  532. CD={}
  533. è1ê
  534. CD=48+═(CB,10)&CD
  535. CB=╢(CB/10)
  536. üCB=0â
  537. çCD
  538. éü
  539. éè
  540. éæ
  541. äCB(BQ CD)
  542. üCD=110â
  543. Bf(CC(10))
  544. ëCD=116â
  545. Bf(CC(9))
  546. ëCD=114â
  547. Bf(CC(13))
  548. à
  549. Bf(CC(CD))
  550. éü
  551. éä
  552. îCD=1,CE=0
  553. îCF=M+╛({
  554. 101,110,100},O),
  555. CG=M+╛({
  556. 112,114,111,99,101,100,117,114,101},O),
  557. CH=M+╛({
  558. 102,117,110,99,116,105,111,110},O),
  559. CI=M+╛({
  560. 116,121,112,101},O),
  561. CJ=M+╛({
  562. 103,108,111,98,97,108},O),
  563. CK=M+╛({
  564. 105,110,99,108,117,100,101},O),
  565. CL=M+╛({
  566. 119,105,116,104},O),
  567. CM=M+╛({
  568. 119,105,116,104,111,117,116},O)
  569. æCN(BS CO)
  570. BR CP,CQ,CR 
  571. BQ CS,CT
  572. «CU,CV
  573. èBê
  574. CT=BY(Bb)
  575. üCT=Jâ
  576. çJ
  577. éü
  578. CP=BU[CT]
  579. üCP=BHâ
  580. Be(CT)
  581. ëCP=BDâ
  582. CU={CT}
  583. èBê
  584. CT=BY(Bb)
  585. CP=BU[CT]
  586. üCP=BDâ
  587. CU=CU&CT
  588. ëCP=BBâ
  589. CU=CU&CT
  590. à
  591. BZ(CT)
  592. É
  593. éü
  594. éè
  595. CQ=╛(CU,O)
  596. üCQâ
  597. üö╛(CU,{{
  598. 105,110,99,108,117,100,101},CK})â
  599. üö╛(CU,{{
  600. 103,108,111,98,97,108},CJ})Å
  601. ½(Bq)=0â
  602. üBTÄCOâ
  603. Be(M+CQ)
  604. à
  605. Bf(CU)
  606. éü
  607. éü
  608. éü
  609. à
  610. CQ=╛(CU,P)
  611. üCQâ
  612. üBTÄCOâ
  613. Be(N+CQ)
  614. à
  615. Bf(CU)
  616. éü
  617. à
  618. üCOâ
  619. Bf(Bs(CU))
  620. à
  621. Bf(CU)
  622. éü
  623. éü
  624. éü
  625. çCU
  626. ëCP=BCÅCP=BEâ
  627. Be(CT)
  628. çCT 
  629. ëCP=BBâ
  630. èBU[CT]=BBÅ╛(CT,{
  631. 101,69})ê
  632. Be(CT)
  633. CT=BY(Bb)
  634. éè
  635. BZ(CT)
  636. ëCP=BIâ
  637. Be(CT)
  638. CT=BY(Bb)
  639. èBU[CT]=BBÅ╛(CT,{
  640. 65,66,67,68,69,70})ê
  641. Be(CT)
  642. CT=BY(Bb)
  643. éè
  644. BZ(CT)
  645. ëCP=BGâ
  646. CT=BY(Bb)
  647. ü(CT=45)â
  648. CV=╕(Bb)
  649. Be(10)
  650. à
  651. Be(45)
  652. BZ(CT)
  653. éü
  654. à
  655. CV={}
  656. èBê
  657. CS=BY(Bb)
  658. üCS=10ÅCS=Jâ
  659. ¼(F,{
  660. 109,105,115,115,105,110,103,32,99,108,111,115,105,110,103,32,113,117,111,116,
  661. 101,10})
  662. ╤(1)
  663. éü
  664. üCS=CTâ
  665. É
  666. éü
  667. CV=CV&CS
  668. üCS=92â
  669. CS=BY(Bb)
  670. CV=CV&CS
  671. éü
  672. éè
  673. üBcâ
  674. üCT=39â
  675. ü½(CV)=0â
  676. ¼(F,{
  677. 110,111,116,104,105,110,103,32,98,101,116,119,101,101,110,32,115,105,110,103,
  678. 108,101,45,113,117,111,116,101,115,10})
  679. ╤(1)
  680. éü
  681. Be(32)
  682. üCV[1]=92â
  683. CB(CV[2])
  684. à
  685. Bf(CC(CV[1]))
  686. éü
  687. à
  688. Be(123)
  689. CR=1
  690. èCR<=½(CV)ê
  691. ü═(CR,20)=1â
  692. Be(10)
  693. éü
  694. CT=CV[CR]
  695. üCT=92â
  696. CR=CR+1
  697. CT=CV[CR]
  698. CB(CT)
  699. à
  700. Bf(CC(CT))
  701. éü
  702. üCR<½(CV)â
  703. Be(44)
  704. éü
  705. CR=CR+1
  706. éè
  707. Be(125)
  708. éü
  709. à
  710. Be(CT)
  711. Bf(CV)
  712. Be(CS)
  713. éü
  714. éü
  715. éè
  716. éæ
  717. äCO()
  718. ¼(Ba,10&CM)
  719. ¼(Ba,{
  720. 119,97,114,110,105,110,103,10})
  721. éä
  722. äCP()
  723. ░CQ,CR
  724. CO()
  725. CQ=BK
  726. èBê
  727. CQ=CN(CD)
  728. ü╜(CQ,J)=0â
  729. Bb=CA()
  730. üBb=-1â
  731. Be(BK)
  732. ç
  733. éü
  734. ë╛(CQ,{{
  735. 101,110,100},CF})â
  736. CQ=CN(CD)
  737. ü╛(CQ,{{
  738. 112,114,111,99,101,100,117,114,101},{
  739. 102,117,110,99,116,105,111,110},{
  740. 116,121,112,101},
  741. CG,CH,CI})â
  742. Bj=BM
  743. Bh(Bp[L])
  744. Bp={{},{}}
  745. éü
  746. ë╛(CQ,{{
  747. 103,108,111,98,97,108},CJ})â
  748. Bj=BN
  749. Bk=B
  750. è╛(CQ,{{
  751. 103,108,111,98,97,108},CJ})ê
  752. CQ=CN(CD)
  753. CQ=CN(CD)
  754. CQ=CN(CD)
  755. ü╜(CQ,40)=0â
  756. Bj=BL
  757. ëö╛(CQ,{44,61,{
  758. 103,108,111,98,97,108},CJ})â
  759. Bj=BM
  760. éü
  761. éè
  762. ë╛(CQ,{{
  763. 112,114,111,99,101,100,117,114,101},{
  764. 102,117,110,99,116,105,111,110},{
  765. 116,121,112,101},
  766. CG,CH,CI})â
  767. CQ=CN(CD)
  768. Bj=BL
  769. ë╛(CQ,{{
  770. 105,110,99,108,117,100,101},CK})â
  771. Bb=Bz()
  772. üBb=-1â
  773. ç
  774. éü
  775. ë╛(CQ,{{
  776. 119,105,116,104},{
  777. 119,105,116,104,111,117,116},CL,CM})â
  778. CR=CN(CE)
  779. ü╜(CQ,{
  780. 119,105,116,104})=0Ä
  781. ╜(CR,{
  782. 119,97,114,110,105,110,103})=0â
  783. CO()
  784. éü
  785. ë╜(CQ,44)=0â
  786. Bk=B
  787. à
  788. Bk=C
  789. éü
  790. éè
  791. éä
  792. æCS(«CT)
  793. è½(CT)>0ê
  794. ü╛(CT[½(CT)],{
  795. 10,13,9,32})â
  796. CT=CT[1..½(CT)-1]
  797. à
  798. É
  799. éü
  800. éè
  801. çCT
  802. éæ
  803. äCU()
  804. ¼(F,
  805. {
  806. 117,115,97,103,101,32,49,58,32,32,98,105,110,100,46,98,97,116,32,91,
  807. 45,104,105,100,101,95,115,116,114,105,110,103,115,93,32,91,102,105,108,101,
  808. 110,97,109,101,91,46,101,120,93,93,10})
  809. ¼(F,
  810. {
  811. 117,115,97,103,101,32,50,58,32,32,115,104,114,111,117,100,46,98,97,116,
  812. 32,91,45,104,105,100,101,95,115,116,114,105,110,103,115,93,32,91,45,102,
  813. 117,108,108,95,107,101,121,119,111,114,100,115,93,32,91,102,105,108,101,110,
  814. 97,109,101,91,46,101,120,93,93,10})
  815. ╤(1)
  816. éä
  817. îCV=157000
  818. äCQ()
  819. «CR,CT,CW,CX
  820. BR CY,CZ
  821. ¡Ca,Cb,Cc,Cd
  822. ░Ce
  823. «Cf
  824. CT=┴()
  825. Bc=C
  826. BT=B
  827. Cd=3 
  828. èCd<=½(CT)ê
  829. ü┐({
  830. 72,73,68,69,95,83,84,82,73,78,71,83},Bv(CT[Cd]))â
  831. Bc=B
  832. CT=CT[1..Cd-1]&CT[Cd+1..½(CT)]
  833. ë┐({
  834. 70,85,76,76,95,75,69,89,87,79,82,68,83},Bv(CT[Cd]))â
  835. BT=C
  836. CT=CT[1..Cd-1]&CT[Cd+1..½(CT)]
  837. ë╛(63,CT[Cd])â
  838. CU()
  839. à
  840. Cd=Cd+1
  841. éü
  842. éè
  843. ü½(CT)=2â
  844. BV=G
  845. CW={}
  846. ë½(CT)=3â
  847. ü┐({
  848. 83,72,82,79,85,68,95,79,78,76,89},Bv(CT[3]))â
  849. BV=H
  850. CW={}
  851. ë┐({
  852. 78,79,95,83,72,82,79,85,68},Bv(CT[3]))â
  853. BV=I
  854. CW={}
  855. à
  856. BV=G
  857. CW=CT[3]
  858. éü
  859. ë½(CT)=4â
  860. CW=CT[4]
  861. ü┐({
  862. 83,72,82,79,85,68,95,79,78,76,89},Bv(CT[3]))â
  863. BV=H
  864. ë┐({
  865. 78,79,95,83,72,82,79,85,68},Bv(CT[3]))â
  866. BV=I
  867. à
  868. CU()
  869. éü
  870. à
  871. CU()
  872. éü
  873. üBV !=Hâ
  874. BT=B
  875. éü
  876. Cf=t(╧(0,0))
  877. ü½(CW)=0â
  878. ¼(E,{
  879. 78,97,109,101,32,111,102,32,69,117,112,104,111,114,105,97,32,102,105,108,
  880. 101,32,116,111,32})
  881. üBV=Gâ
  882. ¼(E,{
  883. 98,105,110,100,58,32})
  884. ëBV=Hâ
  885. ¼(E,{
  886. 115,104,114,111,117,100,58,32})
  887. à
  888. ¼(E,{
  889. 98,105,110,100,32,40,119,105,116,104,111,117,116,32,115,104,114,111,117,100,
  890. 105,110,103,41,58,32})
  891. éü
  892. CW=CS(╕(D))
  893. ¼(E,10)
  894. ü½(CW)=0â
  895. ╤(1)
  896. éü
  897. ü½(CT)=½(┴())ÄBV !=Iâ
  898. ¼(E,
  899. {
  900. 72,105,100,101,32,115,116,114,105,110,103,115,32,97,115,32,115,101,113,117,
  901. 101,110,99,101,115,32,111,102,32,65,83,67,73,73,32,99,111,100,101,115,
  902. 63,10})
  903. ¼(E,
  904. {
  905. 40,98,101,116,116,101,114,32,115,104,114,111,117,100,105,110,103,32,98,117,
  906. 116,32,102,105,108,101,32,119,105,108,108,32,98,101,32,98,105,103,103,101,
  907. 114,41,58,32,40,121,41})
  908. CR=get_position()
  909. »(CR[1],CR[2]-2)
  910. Bc=ö┐({
  911. 110},╕(D))
  912. ¼(E,10)
  913. éü
  914. éü
  915. Bb=┬(CW,{
  916. 114})
  917. üBb=-1â
  918. üö╛(46,CW)â
  919. CW=CW&{
  920. 46,101,120}
  921. éü
  922. Bb=┬(CW,{
  923. 114})
  924. üBb=-1â
  925. ┤(2,{
  926. 99,111,117,108,100,110,39,116,32,111,112,101,110,32,37,115,10},{CW})
  927. ç
  928. éü
  929. éü
  930. CY=½(CW)
  931. èCW[CY]!=92ê
  932. CY=CY-1
  933. üCY=0â
  934. É
  935. éü
  936. éè
  937. Bt=CW[1..CY]
  938. CX=CW[CY+1..½(CW)]
  939. BW()
  940. üBV=GÅBV=Iâ
  941. CZ=½(CX)
  942. èCZ>=1ê
  943. üCX[CZ]=46â
  944. É
  945. éü
  946. CZ=CZ-1
  947. éè
  948. üCX[CZ]=46â
  949. CX=CX[1..CZ]&{
  950. 101,120,101}
  951. à
  952. CX=CX&{
  953. 46,101,120,101}
  954. éü
  955. à
  956. ¼(E,{
  957. 78,97,109,101,32,102,111,114,32,110,101,119,32,115,104,114,111,117,100,101,
  958. 100,32,69,117,112,104,111,114,105,97,32,102,105,108,101,58,32})
  959. CX=CS(╕(D))
  960. ¼(E,10)
  961. ü½(CX)=0â
  962. ╤(1)
  963. éü
  964. éü
  965. ü╜(Bv(CX),Bv(CW))=0â
  966. ¼(E,{
  967. 68,111,110,39,116,32,111,118,101,114,119,114,105,116,101,32,116,104,101,32,
  968. 111,114,105,103,105,110,97,108,32,115,111,117,114,99,101,32,102,105,108,101,
  969. 33,10})
  970. ç
  971. éü
  972. üBV=Hâ
  973. Ba=┬(CX,{
  974. 114})
  975. üBa !=-1â
  976. ¼(E,CX&{
  977. 32,97,108,114,101,97,100,121,32,101,120,105,115,116,115,44,32,111,118,101,
  978. 114,119,114,105,116,101,63,32,40,110,41})
  979. ├(Ba)
  980. CR=get_position()
  981. »(CR[1],CR[2]-2)
  982. üö┐({
  983. 121},╕(D))â
  984. ç
  985. éü
  986. ¼(E,10)
  987. éü
  988. éü
  989. Ba=┬(CX,{
  990. 119,98})
  991. üBa=-1â
  992. ¼(E,{
  993. 67,111,117,108,100,110,39,116,32,111,112,101,110,32}&CX&{
  994. 32,102,111,114,32,119,114,105,116,105,110,103,10})
  995. ç
  996. éü
  997. üBV !=Hâ
  998. Ce=┼({
  999. 69,85,68,73,82})
  1000. ü╝(Ce)â
  1001. Ce={
  1002. 67,58,92,69,85,80,72,79,82,73,65}
  1003. éü
  1004. Ce=Ce&{
  1005. 92,66,73,78,92}
  1006. Ca=┬(Ce&{
  1007. 80,68,69,88,46,69,88,69},{
  1008. 114,98})
  1009. üCa=-1â
  1010. ü┐({
  1011. 66,73,78,68,46,69,88,69},CT[1])â
  1012. ¼(E,{
  1013. 117,115,101,32,98,105,110,100,46,98,97,116,32,111,114,32,115,104,114,111,
  1014. 117,100,46,98,97,116,10})
  1015. ╤(1)
  1016. éü
  1017. Ca=┬(CT[1],{
  1018. 114,98})
  1019. üCa=-1â
  1020. ┤(E,{
  1021. 67,111,117,108,100,110,39,116,32,111,112,101,110,32,37,115,32,111,114,32,
  1022. 37,115,10},
  1023. {Ce&{
  1024. 80,68,69,88,46,69,88,69},CT[1]})
  1025. ╤(1)
  1026. éü
  1027. éü
  1028. Cc=0
  1029. ¼(E,{
  1030. 67,114,101,97,116,105,110,103,32}&CX&{
  1031. 32,46,46,46,10})
  1032. èBê
  1033. Cb=╖(Ca)
  1034. üCb=-1â
  1035. É
  1036. éü
  1037. ¼(Ba,Cb)
  1038. Cc=Cc+1
  1039. éè
  1040. ├(Ca)
  1041. üCc<CVâ
  1042. ¼(F,
  1043. {
  1044. 89,111,117,32,99,97,110,39,116,32,98,105,110,100,32,117,115,105,110,103,
  1045. 32,116,104,101,32,67,111,109,112,108,101,116,101,32,69,100,105,116,105,111,
  1046. 110,32,111,102,32,69,88,46,69,88,69,46,10})
  1047. ¼(F,
  1048. {
  1049. 80,68,69,88,46,69,88,69,32,40,80,117,98,108,105,99,32,68,111,109,
  1050. 97,105,110,41,32,109,117,115,116,32,98,101,32,112,114,101,115,101,110,116,
  1051. 32,105,110,32,116,104,101,32,69,117,112,104,111,114,105,97,32,66,73,78,
  1052. 32,100,105,114,101,99,116,111,114,121,46,10})
  1053. éü
  1054. ¼(Ba,Cf)
  1055. üBV=Iâ
  1056. èBê
  1057. Cb=╖(Bb)
  1058. üCb=-1â
  1059. É
  1060. éü
  1061. ¼(Ba,Cb)
  1062. éè
  1063. ├(Bb)
  1064. ├(Ba)
  1065. ç
  1066. éü
  1067. éü
  1068. CP()
  1069. éä
  1070. CQ()
  1071.